package org.tgcloud.group.web.controller.dto.file;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.tgcloud.group.core.fileUtils.waterMarkFileUtils.picUtil.MyUrlConverterUtil;


import java.math.BigDecimal;
import java.net.URL;
import java.util.Date;
import java.util.List;

@EqualsAndHashCode
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@HeadStyle(horizontalAlignment = HorizontalAlignment.CENTER, fillBackgroundColor = 44, fillForegroundColor = 44)
@ContentStyle(horizontalAlignment = HorizontalAlignment.CENTER)
@HeadRowHeight(40)
@HeadFontStyle(fontName = "微软雅黑", fontHeightInPoints = 10)
@ContentFontStyle(fontName = "微软雅黑", fontHeightInPoints = 9)
public class HotelDownLoadDTO {

    @ColumnWidth(value = 20)
    @ExcelProperty(value = "酒店名称")
    private String hotelName;

    @ColumnWidth(value = 30)
    @ExcelProperty(value = "酒店地址")
    private String hotelAddress;

    @ColumnWidth(value = 10)
    @ExcelProperty(value = "旺季时间")
    private String busyTime;

    @ColumnWidth(value = 10)
    @ExcelProperty(value = "房型")
    private String hotelType;

    @ColumnWidth(value = 10)
    @ExcelProperty(value = "使用有效期")
    private String expirationDate;

    @ColumnWidth(value = 10)
    @ExcelProperty(value = "是否含早")
    private String isHaveMorning;

    @ColumnWidth(value = 10)
    @ExcelProperty(value = "数量")
    private Integer num;

    @ColumnWidth(value = 10)
    @ExcelProperty(value = "平台价")
    private BigDecimal price;

    @ColumnWidth(value = 40)
    @ExcelProperty(value = "链接")
    private String url;

    @ColumnWidth(value = 30)
    @ExcelProperty(value = "房间图片", converter = MyUrlConverterUtil.class)
    private List<URL> hotelPic;

    @ColumnWidth(value = 10)
    @ExcelProperty(value = "实际成交价")
    private BigDecimal realPrice;

}
